module aestop(clk,rst,staenc,stadec,load_shift,loadkey,din,dout,complete,ready);

output [31:0] dout;/*load_shift有效时，加解密模块中128位寄存器中的加解密结果
                    通过输出总线dout串行输出，每次32位*/
input [31:0] din;/*load_shift有效时，将128位明文/密文串行装载
                至加解密模块中128位的寄存器中，每次32位；
                loadkey用来加载密钥，同样是串行输入*/
input clk,rst,staenc,stadec,load_shift,loadkey;
output complete,ready;
wire mixsel,reginsel,shiftsel,dataregen,rndkren,sboxinsel,deckeywen,clk;
wire [1:0] keyadsel,keysel;
wire [3:0] rconsel;
wire [127:0] roundkey;

cryptdap cryptdap(clk,rst,keyadsel,mixsel,reginsel,shiftsel,dataregen,din,roundkey,dout);
keyexp keyexp(clk,rst,keysel,rndkren,rconsel,loadkey,din,sboxinsel,deckeywen,roundkey);
control control(clk,rst,staenc,stadec,load_shift,rndkren,sboxinsel,dataregen,mixsel,reginsel,shiftsel,deckeywen,keysel,keyadsel,rconsel,complete,ready);
endmodule
